Network telemetry involves the use of automated tools and processes designed to collect measurements and other data at points throughout the network, which can then be used for network monitoring and performance analysis.
An application of network telemetry is flow or route tracing, which involves getting a list of identities (IDs) of devices traversed by a traffic flow through a network. The traceroute network diagnostic tool is an example of an Internet protocol (IP)-centric route tracing tool that provides a list IP addresses and/or translated domain name system (DNS) names to indicate the nodes visited by an IP packet in a network. Implementations of traceroute is inherently linked to packet networks and is limited to gathering information about the network nodes and links, but is not able to provide more detailed information about the traffic flow.
The In-band Network Telemetry (INT) framework, developed for packet networks, is implemented in the data plane (e.g., the part of each network node's architecture that makes forwarding decisions for incoming packets) such that telemetry information is carried in data packets (e.g., in the header of data packets) and can get modified with each hop. The INT framework has implemented extensions to traceroute that operate on a flow-basis. With INT, a packet may be instrumented with a proof of transit (POT) header that securely records the route of each packet flow as it traverses an intermediate network device along with some auxiliary information such as the queue length or geographical information of the device servicing the packet. A verifier may be used to verify the path of the packet flow by comparing the recorded value of POT header as received in the packet with the expected value.
The Internet Engineering Task Force (IETF) has a draft standard that describes an In-situ Operations, Administration, and Maintenance (IOAM) telemetry tool, also for packet networks, that is designed to record operational and telemetry information in the packet while the packet traverses a path between two nodes in the network. The IOAM telemetry tool collects telemetry information on tracing nodes, ingress/egress interfaces and some generic attributes. According to IOAM, generic data includes format-free information where syntax and semantic of the information is defined by the operator in a specific deployment, which is interpreted by all IOAM nodes the same way. Examples of generic IOAM data include geo-location information (location of the node at the time the packet was processed), buffer queue fill level or cache fill level at the time the packet was processed, or a battery charge level.
However, existing route (flow) tracing solutions, including traceroute and IOAM, are not designed to perform telemetry or route tracing over multiple network layers, such as packet and optical, or different sublayers or encapsulations (e.g., IP in IP, IP and Multiprotocol Label Switching (MPLS), or IP and Virtual Extensible LAN (VXLAN)). Moreover, existing flow tracing solutions do not include such services and network functions as encryption, load balancing, or network firewalls.
For example, if traceroute or IOAM were used in a packet-optical network, then the optical segment(s) of the network would not be able to provide route trace information and the list of nodes traversed by the traffic flow would be incomplete. Moreover, traceroute or IOAM are not equipped to prove that a specific list of nodes was traversed.